home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-08-01 | 11.0 KB | 246 lines | [TEXT/ttxt] |
- RELEASE NOTES FOR FONDetective
-
-
- What does it do...?
-
- FONDetective writes a text file reporting exhaustively on every
- little last thing in the FOND resources of font suitcases. It works
- on Type 1, TrueType or Multiple Master suitcases (which are not
- fundamentally distinct in any case), and it draws a few conclusions
- in the way of error-reporting and helpful hints. If you want to know
- why a font like AT&T Garamond is so evil to set, FONDetective will
- tell you. If you want to know why low-numbered Adobe volumes have
- such bogus kerns, FONDetective will show you where the bodies are
- buried. If you want to know what's wrong with a RIP-crashing font,
- FONDetective will at least offer clues. And if you need to download
- the printer font associated with Franklin Gothic Roman No. 2,
- FONDetective will whisper its true name.
-
-
-
- Using FONDetective...
-
- FONDetective is System 7 and above only. Its only interface is Drag
- & Drop, so it will not work with earlier systems. If you try to use
- it with an earlier system, the software will display an error
- message and quit gracefully. If you double-click on the icon from
- System 7, a help message will be displayed and the software will
- quit gracefully.
-
- To use FONDetective, Drag & Drop one or more suitcases on the icon
- (or an alias). A plain text file will be created that will document
- with great precision and _no_ concision (grin) the contents of each
- FOND resource in the suitcase. You can examine and print the file in
- any text editor. (Note: if you use BBEdit, bump its allocation; the
- reports can get _very_ large. Also: it's a sweet idea to make sure
- you have a few megs of disk space free, particularly with Multiple
- Master fonts, which have a new FOND - with a _lot_ of kerning pairs -
- for each 'instance'.)
-
- The file FONDetective creates is a space-formatted plain text file.
- In consequence, you should view and print it in a fixed-width font
- such as Courier or Monaco. Monaco does not support the full Macintosh
- character set, so, ideally, you should print in Courier, Prestige
- Elite, or some other fully-charactered fixed-width font. Alas, even
- fixed-width fonts aren't fixed in _every_ width, so you will see some
- shifting in alignment in the Widths and Kern tables.
-
- You can Drag & Drop as many suitcases as you like on the icon, and
- each will be processed in turn, with each suitcase processed
- resulting in a new text file with the extension ".FND" appended to
- the name of the source suitcase. _In NO case_ will the source
- suitcase be altered in any way, and you can operate on suitcases that
- are currently in use by Suitcase or Master Juggler.
-
- As with any utility of mine that takes time to run, FONDetective
- features the sleek and understated Movado Museum watch cursor. And:
- at the completion of a batch of suitcases, the software will beep to
- let you know that you have regained control of your Mac.
-
-
-
- Error reporting...
-
- If FONDetective beeps _more than once_ in a batch of files, it means
- that an error has occurred. There are three levels of errors, and
- FONDetective gives meaningful reports on two of them.
-
- The first level is a FOND error (e.g., a duplicate style, which can
- be introduced by injudicious use of the Font/DA Mover). FONDetective
- will flag this type of error in the report and continue processing
- that suitcase. At the time of the beep, the software will display the
- nature of the error to the screen.
-
- The second level is a resource or system error associated with the
- suitcase. In this event, FONDetective will flag the error by its
- system error number in the report and to the screen and quit
- gracefully. (I've never seen this happen spontaneously, but I built
- in the reporting because it _could_. If you want to _make_ it happen,
- open a suitcase with ResEdit, then run that same suitcase through
- FONDetective.)
-
- The third level is a fatal system error, which means that execution
- is summarily terminated by the operating system. About these I can
- report nothing, but, should they occur, the most likely culprits are
- insufficient disk space or bad disk sectors.
-
- Having said all that about errors, I should add that FONDetective
- itself is not _causing_ errors but only _reporting_ on them. To my
- knowledge, based on an _extreme_ amount of testing, it is completely
- free of bugs. And, even if that turns out to be untrue, I _know_ that
- it is not wreaking the kind of system error havoc that comes of
- playing fast and loose with the operating system. We are doing
- everything in legal - pedestrian, even - ways. So: if you _do_ have a
- fatal error, and if the cause is not intuitively obvious, run
- SUM/Norton/etc. right away.
-
- And: in fact, there is essentially a fourth level of error-reporting,
- which amounts to a legal FOND element that is nevertheless anomalous.
- For example, for reasons unknown, my copy of Adobe ITC Franklin
- Gothic (volume 23) does not have a Bounding Box Table. This is not an
- error as such, but it's odd, as you will see as you become familiar
- with FONDetective reports.
-
-
-
- FONDetective reports...
-
- FONDetective reports on each and every thing found in the FOND
- resource. If you've ever looked at a FOND using the ResEdit template,
- you know that a FOND consists of a few semi-intelligible bits of
- information followed by a sea of hexadecimal numbers (grin). In fact,
- a FOND is actually a remarkably compact rendering of an immense
- quantity of data. Never was there a poet so economical with words as
- the FOND is with numbers, and the FOND wastes not one byte. Of
- course, the FOND is being economical with disk space that is no
- longer dear, but we can hardly fault the Apple engineers for being
- kind to users of tiny, expensive hard (and floppy!) disks that are
- now long since obsolete.
-
- In any case, while the FOND contains a _lot_ of useful information,
- it has never contained much in the way of _accessible_ information.
- FONDetective gives you access that that data in a documented,
- human-readable format. Hexadecimal numbers that refer to integral
- quantities, memory addesses offsets, and resource I.D.s are shown
- as integer decimal numbers. Hex numbers that refer to font metric
- units (for want of a better name) are shown in floating point decimal
- numbers.
-
- (For reference, a font metric unit is the em square of a hypothetical
- one-point font size. It is stored as a two byte signed short integer,
- with the four most significant bits representing the signed integer
- portion of the ultimate value and the twelve least significant bits
- denoting the signed fraction. Expressed in decimal, the stored
- integral number is divided by 4096.0 to yield the displayed floating
- point number. Because the the fraction is expressed in 12 bits, the
- font metric unit has a granularity of 4,096, which means is has,
- effectively, 3-1/2 places of decimal precision. In consequence, the
- floating point representation of font metric units is rounded to
- three decimal places.)
-
- Every bit of information in the FOND is reported upon, but it is not
- shown in the exact sequence in which it occurs. The Style Table is
- shown before the Widths and Kerns, for example, even though it
- usually comes between them or after both (in Multiple Master fonts).
- This is done for the convenience of the reader. It seems likely that
- you'll need the Style information more often, so it is put first.
-
- In the same respect, much of what is reported is either inferred or
- derived from the stored data. For example, the FOND never reports on
- styles, but only lists a style's number. The Style Name Suffixes are
- shown _as they work_, not as they come out of the FOND. And the
- Printer Font File Name is derived algorithmically; it is not stored
- in the FOND at all. As above, the whole point is to make the data
- accessible to and convenient for the user.
-
- For the most part, the information is obvious as presented. If you
- need greater detail than I'm providing (!!), the structure of the
- FOND is documented in Inside Macintosh IV and LaserWriter Reference.
- If you avail yourself of these resources, take note that some
- critical information is either incorrect or absent, most notably with
- the latter book.
-
-
-
- Saving paper...
-
- If I were writing a utility for money, rather than a development tool
- that I'm documenting and giving away, I would do three things: first,
- I would show the FONDs by name in a List Manager list, allowing you
- to select them individually. Second, I would display the selected
- FOND to a scrolling window, so that you could read it to the screen.
- And, third, I would make it possible to print directly from the
- application, with the software taking care to make best use of the
- paper (perhaps with my own truly mono-spaced font). But I ain't, not
- now anyway. So viewing and printing are up to you.
-
- For the most part, you'll want to view rather than print. For this I
- recommend BBEdit, as always. It's fast, reliable and free, and it's
- mono-spaced out of the box.
-
- But: if you print from BBEdit, you will be dismayed at the number of
- pages a typical FONDetective report runs to. For this reason, I've
- made a QuarkXPress template (included in this archive) that lets you
- pack a lot of FONDetective information onto a few pages.
-
-
-
- The usual quasi-legal white noise...
-
- FONDetective, its source and executable code, and this poor excuse
- for a manual are Copyright (C) 1998 by Greg Swann. All rights are
- most emphatically reserved. Greg Swann is a Macintosh software
- developer specializing in Desktop Publishing applications. He can be
- reached via email at gswann@kagi.com or gswann@primenet.com or by
- snailmail at:
-
- Greg Swann
- 3608 West Cochise Drive
- Phoenix, AZ 85051
-
- FONDetective is freeware and may be distributed freely so long as the
- complete, original archive is transmitted.
-
- FONDetective is delivered "as is", without any warranties, expressed
- or implied. It is not warranted to be useful _to_ anyone, _for_
- anything, and in no wise am I to be held responsible for any
- unfortunate consequences resulting from its use or misuse. And I
- _hate_ having to say things like that. I do my best to write useful,
- simple, elegant, bug-free solutions to difficult problems. In this
- case, I am giving of my labor at no charge at all. If you take it
- into your head that I represent your big chance to 'strike it rich,'
- you will pay a lot in legal fees to discover that you have
- miscalculated.
-
- And: to those to whom the above disclaimer does not apply: forgive me
- for having to make it. It's _you_ whom I'm working for, for pay or
- for free. I appreciate your custom and your support, and I wish we
- all could just comb the others out of our hair...
-
-
-
- Projects for the ambitious...
-
- ...among whom I do not number myself... (grin)
-
- I don't feel confident enough with PageMaker to make a paper-saving
- template in it. If you _do_, then it would be an nice enhancement for
- FONDetective users.
-
- In principle, it should be fairly easy to make a Torquemada set that
- would read a FONDetective report and style tag it for a very pretty,
- very compact QuarkXPress template. I for one would be boundlessly
- grateful if someone were to do this.
-
- Lastly, and most ambitiously, I think it would be nice to have a
- fully charactered fixed-width font that is fixed in width in each and
- every slot. This would come in handy in many contexts, not just this
- one.
-
-
-
- Very Best,
-
- Greg Swann
- 8/1/98
-